Significant developments in technology have led to improvements in the quality, quantity, and affordability of services provided to a consumer. The changing needs of business and residential market segments has required new telephony capabilities that are neither simple nor economical for service providers to implement using the existing public services telephone network (PSTN) infrastructure. As a result, integrated services and multimedia are being transmitted over a universal and ubiquitous packet based infrastructure. The infrastructure has incorporated the Internet as a media for packet data transmission.
The characteristics of voice and voice band data (i.e., fax and modem) transmission oppose the time insensitive characteristics of packet based transmission. In order for speech to be intelligible, the syllabic and time characteristics of speech must be retained during transmission. When voice or voice band data is transmitted over carrier class equipment using the PSTN, the infrastructure incorporates a hierarchical clock distribution that guarantees that data is sampled using a common clocking source. However, residential class telephony equipment (such as voice or fax over IP gateways, or data modems) are not provided with a distributed clock to the customer premise. As a consequence, a clock drift compensation mechanism is required. For example, in residential voice over Internet Protocol (VoIP), two VoIP endpoints or nodes will send and receive sampled data at slightly different data rates. If the rates are not corrected over time, speech intelligibility may be affected. There are a number of ways to compensate for differences between the sampled data rate between the sender's and receiver's nodes. However, there are several disadvantages associated with each of these approaches.
One of these disadvantages relates to the frequency oscillator at each node. Because the characteristics of each oscillator are independent of each other, separate clock drift estimators, resamplers, and control loop mechanisms are required for each voice and/or voice band channel transmitted.
In addition, the process of clock drift estimation is inherently noisy as it relies on incoming data packets to estimate clock drift. The data packets introduce noise related to the difference in clock frequencies of the two nodes.
Furthermore, an amount of time must transpire before statistically significant clock drift measurements may be taken. For example, monitoring the rate of accumulation or reduction of a jitter buffer provides a parameter that may be used to adjust the local clock rate. In using a jitter buffer as a drift estimation tool, a portion of the jitter buffer may be reserved for clock drift estimation, reducing the available buffer space for jitter compensation.
An additional disadvantage relates to the resampling of data in order to compensate for clock drift. Resampling introduces distortion in the signal path and may have a detrimental effect on high bandwidth analog modems such as modems that utilize the V.90 and V.92 standard. Further, resampling requires additional processing power provided by an existing central processing unit (CPU).
Finally, each voice or voice band data channel may require clock drift compensation based on the clock rate difference between the transmitting and receiving nodes. The process may involve the use of additional hardware and/or software to implement appropriate clock drift offsets for each call.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.